<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
  <title>返回下标</title>
  <script>
    // 13.  求一组数中的最大值和最小值，以及所在位置的下标。
    function work13(x) {
      //判断数组长度，如果不大于等于2，直接输出错误
      if (x.length > 1) {
        //避免更改原数组，复制原数组,调用数组排序函数，从而获取数组最大值和最小值
        var pxh = x.slice(0),
          max = pxsdd(pxh)[pxh.length - 1],
          min = pxsdd(pxh)[0];
        //遍历数组寻找最大值和最小值（鉴于可能出现相同数据，这里是用遍历，而不是直接找首次出现位置）
        for (let i = 0; i < x.length; i++) {
          //判断条件，满足输出
          switch (x[i]) {
            case max:
              console.log('数组最大值是' + max + '，在数组下标为' + i + '的位置');
              break;
            case min:
              console.log('数组最小值是' + min + '，在数组下标为' + i + '的位置');
              break;
          }
        }
      } else {
        //数组长度不符合要求直接输出错误
        console.log('数组不符合要求');
      }
    }
    //调用函数
    work13([1, 3, 5, 2, 6, 1, 7, 3, 4, 5, 5])


    //功能：一组数从小到大排列
    //参数：纯数字数组
    function pxsdd(x) {
      //数组从小到大排序
      x.sort(function (a, b) {
        if (a < b) {
          return -1;
        } else if (a > b) {
          return 1;
        } else {
          return 0;
        }
      })
      //返回数组
      return x;
    }
  </script>
</head>

<body>

</body>

</html>